package com.systop.asset.service;

import com.systop.asset.entity.ProcessTemplate;
import com.systop.asset.entity.RestResponse;

import java.io.InputStream;
import java.util.List;

/**
 * 审批模板Service接口
 * 
 * @author mu
 * @date 2025-06-24
 */
public interface IProcessTemplateService 
{
    /**
     * 查询审批模板
     * 
     * @param id 审批模板主键
     * @return 审批模板
     */
    public ProcessTemplate selectProcessTemplateById(Long id);

    /**
     * 查询审批模板列表
     * 
     * @param processTemplate 审批模板
     * @return 审批模板集合
     */
    public List<ProcessTemplate> selectProcessTemplateList(ProcessTemplate processTemplate);

    /**
     * 新增审批模板
     * 
     * @param processTemplate 审批模板
     * @return 结果
     */
    public RestResponse insertProcessTemplate(ProcessTemplate processTemplate);

    /**
     * 修改审批模板
     * 
     * @param processTemplate 审批模板
     * @return 结果
     */
    public int updateProcessTemplate(ProcessTemplate processTemplate);

    /**
     * 批量删除审批模板
     * 
     * @param id 需要删除的审批模板主键集合
     * @return 结果
     */
    public RestResponse deleteProcessTemplateByIds(Long id);

    /**
     * 删除审批模板信息
     * 
     * @param id 审批模板主键
     * @return 结果
     */
    public int deleteProcessTemplateById(Long id);

    /**
     * 搜索部署文件
     * @param id 模板id
     * @param type 文件类型：xml或者png
     * @return
     */
    InputStream getBpmnFile(Long id, String type);
}
